using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;

using student_factory.Metier;
using student_factory.DAO;

namespace student_factory.ConsulterProjet
{
    public partial class ConsulterProjet : Form
    {
        private IList<ConsulterProfil> listeInstance = new List<ConsulterProfil>();

        public ConsulterProjet()
        {
            InitializeComponent();
            IList<Projet> listProj = ProjetDAO.getActiveProjects();
            foreach (Projet p in listProj)
            {
                lbProjets.Items.Add(p.Prj_nom);
            }
        }

        private void lbProjets_SelectedIndexChanged(object sender, EventArgs e)
        {
            // afficher la description du projet correspondant
            // client.Text = lbProjets.SelectedItem.ToString(); 
                if (lbProjets.SelectedItem != null)
                {
                    boutonProfils.Visible = true;
                    if (lbProjets.SelectedItem.ToString() != null && lbProjets.SelectedItem.ToString() != "")
                    {
                        Projet p = ProjetDAO.getProjectByName(lbProjets.SelectedItem.ToString());

                        Client c = ClientDAO.getClient(p.Id_c);

                        // maj de l'affichage
                        if (c != null)
                            client.Text = c.Cli_raison_social;

                        description.Text = p.Prj_description;
                    }
                }
            }

        private void boutonProfils_Click(object sender, EventArgs e)
        {
            Projet p = ProjetDAO.getProjectByName(lbProjets.SelectedItem.ToString());

            IList <Etudiant> profiles = EtudiantDAO.getEtudiantsFromProject(p);

            Client c = ClientDAO.getClient(p.Id_c);

            listeInstance.Add(new ConsulterProfil(profiles,p.Prj_description,c.Cli_raison_social));
            listeInstance[listeInstance.Count - 1].Show();
        }

        private void btQuitter_Click( object sender, EventArgs e )
        {
            foreach (ConsulterProfil fenetre in listeInstance)
            {
                fenetre.Dispose();
            }
            Dispose();
        }
    }
}